999精品国产,高贵的丝袜人妻,人妻无码视频一区二区,国产高清无码自拍,AV波多野结衣无码

    1. <rt id="h9twg"><progress id="h9twg"></progress></rt><style id="h9twg"></style>

      聯(lián)
      咨詢熱線:

      17661095540

      聯(lián)系QQ:

      2863379292

      官方微信:

      建站干貨:動(dòng)靜分離,讓網(wǎng)頁(yè)訪問速度提升幾個(gè)level

      建站經(jīng)驗(yàn)

      導(dǎo)讀:建站后,隨著內(nèi)容的不斷豐富,各種文字、圖片、腳本的增加,如果沒有妥當(dāng)?shù)奶幚矸绞?,網(wǎng)頁(yè)訪問速度會(huì)逐漸降低。在這個(gè)追求時(shí)效的信息快時(shí)代,網(wǎng)頁(yè)訪問者的耐心正在降低。據(jù)研究表明,用

      發(fā)表日期:2019-12-23

      文章編輯:興田科技

      瀏覽次數(shù):9408

      標(biāo)簽:

      建站后,隨著內(nèi)容的不斷豐富,各種文字、圖片、腳本的增加,如果沒有妥當(dāng)?shù)奶幚矸绞?,網(wǎng)頁(yè)訪問速度會(huì)逐漸降低。在這個(gè)追求時(shí)效的信息快時(shí)代,網(wǎng)頁(yè)訪問者的耐心正在降低。

      據(jù)研究表明,用戶對(duì)打開速度2秒以下的網(wǎng)頁(yè)表示滿意,而其能夠忍受的最長(zhǎng)等待時(shí)間是6~8秒。而8秒作為一個(gè)臨界值,如果你的網(wǎng)站打開速度超過8秒,那么很可能,大部分訪問者會(huì)因此離你而去。相關(guān)數(shù)據(jù)顯示,如果網(wǎng)頁(yè)加載時(shí)間超過12秒,99%以上的訪問者會(huì)關(guān)閉頁(yè)面,不再等待。

      那么今天美橙將給大家?guī)砭W(wǎng)頁(yè)提速的新招,即動(dòng)靜分離。

      動(dòng)靜分離,那么什么動(dòng)態(tài)的,什么是靜態(tài)的呢?

      訪問網(wǎng)頁(yè)的時(shí)候,我們總會(huì)發(fā)現(xiàn)瀏覽器會(huì)加載各種各樣的文件,有html文件,有css樣式表,有js腳本,還有圖片,還有流媒體等各種文件,這些其實(shí)就是靜態(tài)的文件,放在服務(wù)器上,無須動(dòng)態(tài)生成的文件那么就是靜態(tài)文件。那么什么是動(dòng)態(tài)文件呢?例如java寫的jsp文件,需要通過編譯器進(jìn)行編譯成字節(jié)碼文件,然后在java虛擬機(jī)上運(yùn)行,運(yùn)行之后,返回給客戶端一個(gè)響應(yīng),有的時(shí)候,還需要到數(shù)據(jù)庫(kù)中取出數(shù)據(jù),那么這種需要經(jīng)過編譯的文件就稱之為動(dòng)態(tài)文件。

      動(dòng)態(tài)文件的處理比靜態(tài)文件的處理速度要慢N倍,慢在啥地方呢?首先,動(dòng)態(tài)文件需要編譯,耗費(fèi)時(shí)間,動(dòng)態(tài)文件要去連接數(shù)據(jù)庫(kù),耗費(fèi)時(shí)間,動(dòng)態(tài)文件需要組織成http響應(yīng),耗費(fèi)時(shí)間,根據(jù)java的流程,那么就是根據(jù)url,找到j(luò)sp文件,將jsp文件轉(zhuǎn)換成servlet文件,然后形成類文件,然后在jvm上運(yùn)行,jvm可能還要加載額外的類文件,然后組成成響應(yīng)返回給servlet,然后再返回給客戶端。

      在使用動(dòng)靜分離的時(shí)候,一般使用的模型如下所示:

      <iframe id="video" id="iframe_0.7752190983764249" src="data:text/html;charset=utf8,%3Cstyle%3Ebody%7Bmargin:0;padding:0%7D%3C/style%3E%3Cimg%20id=%22img%22%20src=%22https://mmbiz.qlogo.cn/mmbiz_png/7QpC8diafAtWIotaWQfdlxS6B4OTl2iaM3ia0OuFsDviaQ8oYpwibbzwibWznHibOVZOB3X1pRYtpYLMYCeuibCpUUIzWQ/0?wx_fmt=png&_=7565697%22%20style=%22border:none;max-width:701px%22%3E%3Cscript%3Ewindow.onload%20=%20function%20()%20%7Bvar%20img%20=%20document.getElementById('img');%20window.parent.postMessage(%7BiframeId:'iframe_0.7752190983764249',width:img.width,height:img.height%7D,%20'http://www.cnblogs.com');%7D%3C/script%3E" frameborder="0"></iframe>

      在使用動(dòng)靜分離的時(shí)候,需要將一些靜態(tài)的文件和動(dòng)態(tài)的文件分離開來,從而使用nginx來處理靜態(tài)請(qǐng)求,而使用tomcat來處理動(dòng)態(tài)的請(qǐng)求,從而會(huì)大大的提高處理速度,為啥?

      nginx和httpd是專門用來處理靜態(tài)文件的,效率極高,并且由nginx直接響應(yīng),減少了向后端轉(zhuǎn)發(fā)的過程;將動(dòng)態(tài)內(nèi)容和靜態(tài)內(nèi)容進(jìn)行分離,可以提高資源利用率,nginx的性能得到發(fā)揮,也讓tomcat不會(huì)那么繁忙,動(dòng)態(tài)服務(wù)器機(jī)器耗費(fèi)性能,例如在java中的各種方法區(qū)對(duì)象的回收,堆內(nèi)存的回收等。

      構(gòu)建動(dòng)靜分離的環(huán)境

      要想構(gòu)建動(dòng)靜分離的環(huán)境,那么就需要安裝nginx,安裝jdk,然后安裝tomcat,具體的步驟如下:

      編譯安裝nginx:

      [root@mogilenode2 nginx-1.10.1]# ./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_stub_status_module --with-pcre

      [root@mogilenode2 nginx-1.10.1]# make && make install

      [root@mogilenode2 ~]# /usr/local/nginx/sbin/nginx (啟動(dòng)nginx)

      [root@mogilenode2 ~]# netstat -tnlp|grep nginx(查看監(jiān)聽端口,并且使用瀏覽器訪問測(cè)試)

      tcp0 0 0.0.0.0:80 0.0.0.0:*LISTEN 13933/nginx

      <iframe id="video" id="iframe_0.11612649917182427" src="data:text/html;charset=utf8,%3Cstyle%3Ebody%7Bmargin:0;padding:0%7D%3C/style%3E%3Cimg%20id=%22img%22%20src=%22https://mmbiz.qlogo.cn/mmbiz_png/7QpC8diafAtWIotaWQfdlxS6B4OTl2iaM31uh6gibIib0c08bsibbaZyVG5uEpsE2zWt6xpicWBkMQ2mhC0fL7VzSThg/0?wx_fmt=png&_=7565697%22%20style=%22border:none;max-width:701px%22%3E%3Cscript%3Ewindow.onload%20=%20function%20()%20%7Bvar%20img%20=%20document.getElementById('img');%20window.parent.postMessage(%7BiframeId:'iframe_0.11612649917182427',width:img.width,height:img.height%7D,%20'http://www.cnblogs.com');%7D%3C/script%3E" frameborder="0"></iframe>

      安裝jdk:

      [root@mogilenode3 server]# rpm -ivh jdk-8u144-linux-x64.rpm

      preparing...########################################### [100%]

      1:jdk1.8.0_144########################################### [100%]

      Unpacking JAR files...

      tools.jar...

      plugin.jar...

      javaws.jar...

      deploy.jar...

      rt.jar...

      jsse.jar...

      charsets.jar...

      localedata.jar...

      配置java環(huán)境變量:

      [root@mogilenode3 server]# echo "export JAVA_HOME=/usr/java/latest">/etc/profile.d/java.sh

      [root@mogilenode3 server]# echo "export pATH=$JAVA_HOME/bin:$pATH">>/etc/profile.d/java.sh

      [root@mogilenode3 server]# cat /etc/profile.d/java.sh

      export JAVA_HOME=/usr/java/latest

      export pATH=/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin

      測(cè)試jdk及環(huán)境變量是否成功:

      <iframe id="video" id="iframe_0.09957966243735061" src="data:text/html;charset=utf8,%3Cstyle%3Ebody%7Bmargin:0;padding:0%7D%3C/style%3E%3Cimg%20id=%22img%22%20src=%22https://mmbiz.qlogo.cn/mmbiz_png/7QpC8diafAtWIotaWQfdlxS6B4OTl2iaM3k3kRmughY6ueB50LRwa68OE5arH3Cal8FRY7rD604lzrteJTw3ZicHw/0?wx_fmt=png&_=7565697%22%20style=%22border:none;max-width:701px%22%3E%3Cscript%3Ewindow.onload%20=%20function%20()%20%7Bvar%20img%20=%20document.getElementById('img');%20window.parent.postMessage(%7BiframeId:'iframe_0.09957966243735061',width:img.width,height:img.height%7D,%20'http://www.cnblogs.com');%7D%3C/script%3E" frameborder="0"></iframe>

      安裝tomcat:

      [root@mogilenode3 server]# tar -xf apache-tomcat-8.5.20.tar.gz -C /usr/local/

      l[root@mogilenode3 server]# ln -sv /usr/local/apache-tomcat-8.5.20/ /usr/local/tomcat

      /usr/local/tomcat' -> /usr/local/apache-tomcat-8.5.20/'

      配置tomcat環(huán)境變量:

      [root@mogilenode3local]# vim /etc/profile.d/tomcat.sh

      [root@mogilenode3local]# cat !$

      cat/etc/profile.d/tomcat.sh

      exportCATALINA_HOME=/usr/local/tomcat

      exportpATH=$CATALINA_HOME/bin:$pATH

      測(cè)試tomcat是否安裝成功:

      [root@mogilenode3 ~]# netstat -tnlp|grep java(注意瀏覽器訪問的時(shí)候,添加端口號(hào)來進(jìn)行訪問)

      tcp 0 0 :::8080 :::* LISTEN 1125/java

      tcp 0 0 ::ffff:127.0.0.1:8005 :::* LISTEN 1125/java

      tcp 0 0 :::8009 :::* LISTEN 1125/java

      <iframe id="video" id="iframe_0.5096301174071962" src="data:text/html;charset=utf8,%3Cstyle%3Ebody%7Bmargin:0;padding:0%7D%3C/style%3E%3Cimg%20id=%22img%22%20src=%22https://mmbiz.qlogo.cn/mmbiz_png/7QpC8diafAtWIotaWQfdlxS6B4OTl2iaM3HSibib7G7mJXzEg4xO93n5Oqhog7YRsGMNmdojHWxDWeKyfuibDnAv9Jg/0?wx_fmt=png&_=7565697%22%20style=%22border:none;max-width:701px%22%3E%3Cscript%3Ewindow.onload%20=%20function%20()%20%7Bvar%20img%20=%20document.getElementById('img');%20window.parent.postMessage(%7BiframeId:'iframe_0.5096301174071962',width:img.width,height:img.height%7D,%20'http://www.cnblogs.com');%7D%3C/script%3E" frameborder="0"></iframe>

      創(chuàng)建動(dòng)態(tài)文件

      根據(jù)java的目錄層次結(jié)構(gòu),寫一個(gè)基本的頁(yè)面,如下:

      [root@mogilenode3webapps]# mkdir kel

      [root@mogilenode3webapps]# cd kel

      [root@mogilenode3kel]# ls -l

      total 0

      [root@mogilenode3kel]# mkdir {META-INF,WEB-INF,classes,lib}

      [root@mogilenode3kel]# vim index.jsp

      [root@mogilenode3kel]# cat index.jsp

      <%@ page language="java" %>

      <%@ page import="java.util.*" %>

      <html>

      <head>

      <title>JAVA pAGE</title>

      </head>

      <body>

      <% out.println("Hello,World"); %>

      </body>

      </html>

      [root@mogilenode3kel]# ls -l

      total 20

      drwxr-xr-x 2 root root 4096 Sep 20 14:46 classes

      -rw-r--r-- 1 root root 201 Sep 20 14:46 index.jsp

      drwxr-xr-x 2 root root 4096 Sep 20 14:46 lib

      drwxr-xr-x 2 root root 4096 Sep 20 14:46 META-INF

      drwxr-xr-x 2 root root 4096 Sep 20 14:46 WEB-INF

      修改tomcat的配置文件server.xml(添加一個(gè)虛擬主機(jī),主機(jī)名為www.kel.com,,默認(rèn)路徑為webapps下面的kel目錄):

      <Host name="www.kel.com" appBase="webapps" unpackWARS="true" autoDeploy="true">

      <Context path="" docBase="kel" reloadable="true" />

      </Host>

      測(cè)試訪問:

      [root@mogilenode3conf]# grep "www.kel.com" /etc/hosts (設(shè)置主機(jī)名解析)

      192.168.1.238 www.kel.com

      [root@mogilenode3conf]# curl http://www.kel.com:8080 (使用curl進(jìn)行訪問)

      <html>

      <head>

      <title>JAVA pAGE</title>

      </head>

      <body>

      Hello,World

      </body>

      </html>

      配置nginx

      配置主機(jī)名解析:

      [root@mogilenode2nginx]# grep "www.kel.com" /etc/hosts

      192.168.1.237 www.kel.com

      [root@mogilenode2conf]# ls -l nginx.conf(修改nginx配置文件,將動(dòng)態(tài)請(qǐng)求也就是文件后綴為jsp或者do的請(qǐng)求轉(zhuǎn)發(fā)到tomcat上,由于是虛擬主機(jī),所以u(píng)rl中必須寫上主機(jī)名,靜態(tài)頁(yè)面在nginx上處理,靜態(tài)頁(yè)面在html路經(jīng)下)

      -rw-r--r-- 1 root root 2727 Sep 20 15:09 nginx.conf

      server_name www.kel.com;

      #charset koi8-r;

      #access_log logs/host.access.log main;

      location / {

      roothtml;

      index index.html index.htm;

      }

      location ~* .(jsp|do)$ {

      proxy_passhttp://www.kel.com:8080;

      }

      上傳靜態(tài)文件到nginx的html目錄中,用來測(cè)試靜態(tài)文件的訪問:

      [root@mogilenode2 nginx]# ls -l html/1.jpg

      -rw-r--r-- 1 root root 25854 Sep 20 15:13 html/1.jpg

      訪問nginx服務(wù)器測(cè)試靜態(tài)文件訪問:

      <iframe id="video" id="iframe_0.9560413911496475" src="data:text/html;charset=utf8,%3Cstyle%3Ebody%7Bmargin:0;padding:0%7D%3C/style%3E%3Cimg%20id=%22img%22%20src=%22https://mmbiz.qlogo.cn/mmbiz_png/7QpC8diafAtWIotaWQfdlxS6B4OTl2iaM3nJ2Zz2J77fVczm9ykrZXR85uLyAfBtoAptqYupyDRQvILwKkkbVr4A/0?wx_fmt=png&_=7565697%22%20style=%22border:none;max-width:701px%22%3E%3Cscript%3Ewindow.onload%20=%20function%20()%20%7Bvar%20img%20=%20document.getElementById('img');%20window.parent.postMessage(%7BiframeId:'iframe_0.9560413911496475',width:img.width,height:img.height%7D,%20'http://www.cnblogs.com');%7D%3C/script%3E" frameborder="0"></iframe>

      訪問nginx服務(wù)器,測(cè)試動(dòng)態(tài)頁(yè)面訪問:

      <iframe id="video" id="iframe_0.9675013371761754" src="data:text/html;charset=utf8,%3Cstyle%3Ebody%7Bmargin:0;padding:0%7D%3C/style%3E%3Cimg%20id=%22img%22%20src=%22https://mmbiz.qlogo.cn/mmbiz_png/7QpC8diafAtWIotaWQfdlxS6B4OTl2iaM3FsWwmibicCp2Uvb9hGnrkHicrZplxpoiac9NVABWOMgSeia00n6sic8eLn0A/0?wx_fmt=png&_=7565697%22%20style=%22border:none;max-width:701px%22%3E%3Cscript%3Ewindow.onload%20=%20function%20()%20%7Bvar%20img%20=%20document.getElementById('img');%20window.parent.postMessage(%7BiframeId:'iframe_0.9675013371761754',width:img.width,height:img.height%7D,%20'http://www.cnblogs.com');%7D%3C/script%3E" frameborder="0"></iframe>

      總結(jié)

      總體上來說,動(dòng)靜分離還是比較簡(jiǎn)單的,主要讓前端的代理服務(wù)器直接響應(yīng)靜態(tài)請(qǐng)求,讓前端的代理服務(wù)器轉(zhuǎn)發(fā)動(dòng)態(tài)請(qǐng)求到后端的tomcat服務(wù)器即可。

      注意上面的是實(shí)驗(yàn)環(huán)境,對(duì)于tomcat的運(yùn)行的用戶是直接的root用戶,在生產(chǎn)中,必須修改為其他不能登錄的用戶,例如tomcat用戶。

      相關(guān)推薦

      更多新聞

      慈溪市| 伊人av网| 老熟女91视频| 婷婷五月网站| 91精品国产综合久久久蜜臀图片 | 波多射漫| 欧美黑人欧美精品刺激| 台湾省| 香蕉性爱网| 色婷婷综合久久久久久| av久久| 亚洲综合在线婷婷| 四虎无码| 超碰在线青青草| 高州市| 无码人妻精品一区二区中文| 久久精品卡一卡二| 三级片男人的天堂| 国产午夜精品久久久久久无码人妻| 久久久一本| 69人妻一区二区三区蜜桃| 新竹市| 亚洲AV一二三| 九九色综合网| 久久老熟女| 国产无套精品久久久久久水宜方| 人妻自拍视频| 国产不卡a| 操操免费视频| 成人福利午夜A片| 精品蜜桃少妇高潮呻吟久久久| 人人草人人妻| 精品无码人妻一区二区免费| 综合色图区| 欧美精品在线一区| 日本久久熟女| 啪啪B视频| 国产wwwwwww| 亚洲AV丰满熟妇在线播放| 贵溪市| 成人电影一区二区三区|